问题:使用PM2 cluster模式启动多个进程时候报错
1 | PM2: Error: ENOENT: no such file or directory, uv_cwd |
解决方法:
查看PM2的进程ID,ps ax | grep PM2
1
2ps ax | grep PM2
83178 ? Ssl 41 : 19 PM2 v2 .7 .1: God Daemon(/root/.pm2)第一列的83178即为PM2进程的PID
确认一下进程所指向的路径是否正确,ls -l /proc/{PM2_PID}/cwd
1
2$ sudo ls -l /proc/83178/cwd
lrwxrwxrwx 1 root root 0 5月 30 22:10 /proc/83178/cwd -> /WWW/App/web如果这个路径是被删除了的,PM2进程仍然使用了删除的路径,就会报上面的错误。
如果不正确,重启一下:pm2 kill
1
pm2 kill
重启成功后,再次使用pm2 启动新的进程
补充
linux 内核提供了一种/proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存中,而不占用硬盘空间。它以文件系统的方式为访问系统内核数据的操作提供接口。
/proc/{pid}/cwd: 指向进程当前工作目录的软链。